-module(lazy_flv).
-author(hijole).
-compile(export_all).

rr(flv).
c(flv).

-record(filtered_flv, {fn, info})
-record(mapped_flv, {fn, info})
-record(map_filtered_flv, {map_fn, filter_fn, info})

filter(Fun, #mapped_flv{fn = Fn,
			info = Info}) ->
    #filtered_flv{fn = fun(Tag)}
filter(Fun, #filtered_flv{fn = Fn,
		     info = Info}) ->
    #filtered_flv(fn = fun(Tag) -> Fun(Tag) and Fn(Tag) end,
		  info = Info);
filter(Fun, Info) ->
    #filtered_flv{fn = Fun,
		  info = Info}.

mapfilter(Fun, Pred, Info) ->
    undefined.

map(Fun, #filtered_flv{fn = Fun,
		       info = Info}) ->
    
    
